const Tweener = imports.ui.tweener;
const ViewSelector = imports.ui.viewSelector;
const WorkspacesView = imports.ui.workspacesView;
+const WorkspaceThumbnail = imports.ui.workspaceThumbnail;
// Time for initial animation going into Overview mode
const ANIMATION_TIME = 0.25;
_onDragMotion: function(dragEvent) {
let targetIsWindow = dragEvent.targetActor &&
dragEvent.targetActor._delegate &&
- dragEvent.targetActor._delegate.metaWindow;
+ dragEvent.targetActor._delegate.metaWindow &&
+ !(dragEvent.targetActor._delegate instanceof WorkspaceThumbnail.WindowClone);
this._windowSwitchTimestamp = global.get_current_time();
// Draggable target interface
handleDragOver : function(source, actor, x, y, time) {
+ if (source == Main.xdndHandler) {
+ this.metaWorkspace.activate(time);
+ return DND.DragMotionResult.CONTINUE;
+ }
+
if (this.state > ThumbnailState.NORMAL)
return DND.DragMotionResult.CONTINUE;
this._updateAlwaysZoom();
global.screen.connect('monitors-changed', Lang.bind(this, this._updateAlwaysZoom));
+ Main.xdndHandler.connect('drag-begin', Lang.bind(this, function(){
+ this._alwaysZoomOut = true;
+ }));
+
+ Main.xdndHandler.connect('drag-end', Lang.bind(this, function(){
+ this._alwaysZoomOut = false;
+ this._updateAlwaysZoom();
+ }));
this._nWorkspacesNotifyId = 0;
this._switchWorkspaceNotifyId = 0;